[GR-69121] Skip emission of internal JFR ThreadPark events #11769
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When synchronization such as monitor enter or wait is used,
Unsafe.parkis used under-the-hood to block threads. This results in not onlyjdk.JavaMonitorWaitandjdk.JavaMonitorEnterevents being emitted, but secondaryjdk.ThreadParkevents being emitted as well. Thejdk.ThreadParkevents are only emitted due to the implementation details of thecom.oracle.svm.core.monitor.JavaMonitorandcom.oracle.svm.core.monitor.JavaMonitorQueuedSynchronizerclasses.In Hotspot, the Java
Unsafeclass is not needed to block threads sojdk.JavaMonitorWaitandjdk.JavaMonitorEnterevents are emitted without correspondingjdk.ThreadParkevents.We should reduce noise and copy Hotspot by skipping the emission of these internal
jdk.ThreadParkevents.Hotspot


Notice that there is no
jdk.ThreadParkcorresponding to thejdk.JavaMonitorEnterevent.Native Image before the fix


Notice that there is a
jdk.ThreadParkcorresponding to thejdk.JavaMonitorEntereventNative Image after the fix

